Various devices are designed to translate high dimensional data from one medium to another with the goal of reproducing the same measurable information. For example, imaging devices, such as displays, are designed with the goal of producing chromatic radiances (i.e. color pixels) with spectral composition identical to those provided at their input. In practice, imaging devices introduce distortions; identical reproduction of color is not feasible. To remedy this, known calibration methods are employed where input color pixel values are altered so that when provided to the imaging device input, the device reproduces output color pixel values that are perceptually identical to the corresponding input color pixel values.
HDR displays or HDR projectors are examples of devices where chromatic calibration is required. HDR content, captured by HDR cameras, features contrast range and richness of color that closely resemble the human viewer perception of the real world. In contrast to the common Standard Dynamic Range (SDR) displays, HDR displays are capable of producing images with extremely bright regions alongside notably dark regions; a striking contrast that is enabled by recent innovations in local dimming technologies. Production studios already capture content in HDR format. To enable creative post-production processes (e.g. color grading), displaying this content with high color fidelity is of high importance. High rendering quality is also instrumental for 3D engineering design (e.g. CAD) where accurate visualization of materials' reflectance and dynamic may be critical for better design decision making. The realistic color and reflection representation provided by HDR enabled displays may also be essential for many scientific and research tasks that rely on accurate simulations to form diagnoses or tune complex algorithms.
Recent display technologies allow for ever increasing image resolution, up to the high-end image resolution of the Ultra High Definition (UHD) TV. These technological developments substantially improved the observable details in the broadcast video. However, limited dynamic range (of around
      0.1    -          100      ⁢                          ⁢              cd                  m          2                      )prevents the rendering of brightness levels that are typical of real scenes (e.g. day light reflected from surfaces may surpass
      10,000    ⁢          ⁢      cd          m      2      and the darkness of the night may be way below
            0.1      ⁢                          ⁢              cd                  m          2                      )    .Furthermore, the gamut (i.e. displayable color space) of current display technologies is limited. Example gamut definitions are provided in the International Telecommunication Union Recommendation (“ITU-R”) BT. 601 “Studio Encoding Parameters of Digital Television for Standard 4:3 and Wide-Screen 16:9 Aspect Ratios” and BT. 709 “Parameter Values for the HDTV Standards for Production and International Programme Exchange” (see http://www.itu.ch). ITU standards may be referred to herein as “ITU BT. [number]” or simply “Rec. [number]” such as “Rec. 601” and “Rec. 709”. Hence, wide gamut is required to significantly improve viewers' experience (see Rec. 2020 for wide gamut standard definition).
Depending on the specific display technology, displays introduce characteristic (device-dependent) distortions. These distortions may be represented by a deformation field and compensated for by a transform (calibration) function. For example, inventors observed that chromatic data at the input to an HDR display undergo nonlinear distortion that varies with luminance, as will be explained in detail below. Thus, the chromatic and luminance data constitute a volumetric space that may be deformed by the displaying device. In other words, color points from the input gamut when fed into the displaying device deviate to other color points, a deviation that may be modeled and compensated for by a calibration function.
To perform calibration on an imaging device, the calibration function is evaluated for each input color value. The resulting calibrated color value is then fed into the device input. To reduce complexity a look-up-table (LUT) is typically used in runtime. To this end, during initialization phase the calibration function is evaluated for a given set of color values that are sampled from a volumetric grid. This results in the corresponding set of calibrated color values. This precalculated set of calibrated color values is then stored in the LUT. During runtime the LUT is accessed for each input color value to retrieve the corresponding LUT-stored calibrated color value. Hence, the memory size of the LUT and memory accessing time are of importance when realtime calibration is required. The LUT size is especially of concern when large high dimensional data are involved. To illustrate, an HDR image represents each color pixel with 33 bits (13 bits for luminance and 20 bits for chrominance). This results in a color space of 233 times 33 bits (about 35.5 GB). For comparison, an SDR image uses 24 bits to represent a pixel color, resulting in a color space of about 50 MB. Thus, realtime calibration of large volumetric data calls for efficient calibration information representation and retrieval methods.
Efficient methods to represent and access a deformation field are needed to allow realtime calibration. Calibration of devices typically involves mapping input data points from one multi-dimensional space into another multi-dimensional space. This mapping may be represented by a deformation field. Possible representations are based on spatial data structures, capable of efficient n-dimensional data encoding and accessing. Specifically, in the three dimensional case such a spatial data structure may be hierarchical so that sub-regions are nested within their enclosing region—a property that allows for recursive construction and access. A type of such a spatial data structure is binary space partitioning (BSP). In BSP the spatial regions that are encoded by the union of all leaf-nodes regularly partition the entire space, although some variants of BSP allow leaf-nodes to overlap and to encode irregular region geometry. An octree data structure is a special case of axis-aligned BSP where the splitting of each region is done recursively into eight even-sized boxes, and repeats itself until a certain stopping criterion is met or a maximum splitting number is reached. The mechanism in which a spatial data structure is constructed to efficiently encode the data it represents is application dependent. Embodiments of this invention propose methods to calibrate a device in realtime, utilizing spatial data structures that are uniquely constructed to efficiently represent and access large calibration data.